/**
 *
 * ## mixin(混入)
 * 1. 功能：可以把多个组件共用的配置提取成一个混入对象
 * 2. 使用方式：
 *    - 1)、第一步定义混合：
 *     ```
 *     {
 *         data(){....},
 *         methods:{....}
 *         ....
 *     }
 *     ```
 *    2）、第二步使用混入：
 *    ​ 全局混入：```Vue.mixin(xxx)```
 *    ​ 局部混入：```mixins:['xxx']	```
 *
 * @type {{methods: {showName(): void}}}
 */

// Vue混入mixin使用。
// 使用分别暴露的方式进行暴露混入mixin
export const mixin = {
    methods: {
        showName() {
            alert(this.name);
        }
    }
}

// 分别暴漏
export const mixin2 = {
    data() {
        return {
            x: 100,
            y: 200
        }
    }
}

// 分别暴露，可以配置Vue的生命周期，其中和组件里面的生命周期都起作用
export const mixin3 = {
    mounted() {
        console.log('组件挂载 Component mounted.');
    }
}
